package com.ruoyi.stuclient.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.Date;

/**
 * 手机短信验证流水表 ewc_sms_flow
 *
 * @author zsp
 * @date 2025-05-01
 */
@Data
@TableName("ewc_sms_flow")
@Schema(description="手机短信验证对象ewc_sms_flow")
public class EwcSmsFlow implements Serializable {

    private static final long serialVersionUID = 1L;

    /** 唯一标识 */
    @Schema(description  = "唯一标识")
    private String id;

    /** 接收方编号(学号) */
    @Excel(name = "接收方编号(学号)")
    @Schema(description  = "接收方编号(学号)")
    private String clientNo;

    /** 手机号码 */
    @Excel(name = "手机号码")
    @Schema(description  = "手机号码")
    private String mobileNo;

    /** 验证码 */
    @Excel(name = "验证码")
    @Schema(description  = "验证码")
    private String smsCode;

    /** 验证状态 */
    @Excel(name = "验证状态")
    @Schema(description  = "验证状态")
    private String smsValidateStt;

    /** 错误次数 */
    @Excel(name = "错误次数")
    @Schema(description  = "错误次数")
    private Integer smsErrorCount;

    /** 模板编号 */
    @Excel(name = "模板编号")
    @Schema(description  = "模板编号")
    private String templateId;

    /** 短信内容 */
    @Excel(name = "短信内容")
    @Schema(description  = "短信内容")
    private String smsContent;

    /** 创建时间 */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "创建时间")
    private Date createTime;

    /** 发送时间 */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "发送时间")
    private Date sendTime;

    /** 更新时间 */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "更新时间")
    private Date updateTime;

    /** 远程请求ID */
    @Excel(name = "远程请求ID")
    @Schema(description  = "远程请求ID")
    private String requestId;
}
